Azure Web App 提供一個方便部署服務的做法,使用者可以透過git
來部署。之後要製作的 chatbot ,會直接部署在 Azure Web App 。部署之後,Azure Web App 會將使用者的程式,打包成docker image
,在虛擬機器中展開成container
執行。
# 在終端機中輸入
az webapp deployment user set \
--user-name <使用者名稱> --password <密碼>
# 取得在Azure Web App內的git url
az webapp deployment source config-local-git \
--name <你的Web App名稱> --resource-group <你的資源群組>
git push
到 Azure Web App 就是以此帳號密碼登入。Git
部署到 Azure Web App# 在終端機中輸入
az webapp deployment source config-local-git \
--name <你的Web App名稱> --resource-group <你的資源群組>
# 得到 URL
{
"url": "https://<username>@<webappname>.scm.azurewebsites.net/linecv.git"
}
git remote
git remote add azure <your_git_url>
git push azure master
az webapp log tail \
--name <你的Web App名稱> --resource-group <你的資源群組>
App Service 紀錄
進入設定頁面。檔案系統
,分別調整配額(MB)和保留期限(天)。ssh
連線進入 Web Apptunnel
,並提供某個 port 和固定的帳號密碼(root/Docker!),以便連線連線。az webapp create-remote-connection \
-n <你的Web App名稱> --resource-group <你的資源群組> &
root
,密碼都是Docker!
,只要依照上述 port 連線即可。ssh root@127.0.0.1 -p 57281
scp
上傳檔案,只是一定要放在/home
裡。scp -P 57281 config.json root@127.0.0.1:/home/config.json
注意事項
:如果推上去的程式碼有問題,無法啟動,那就無法建立連線,甚至已經建立的連線也會斷掉。這時,請重新上傳可以執行的程式碼,程式碼可以執行後,連線才會暢通。az webapp config appsettings set \
--name <你的Web App名稱> --resource-group <你的資源群組> --settings <變數名稱>=<變數值>
示範:
az webapp config appsettings set \
--name triathlontes --resource-group cv --settings TEST=123
json
檔設定環境變數az webapp config appsettings set \
--name <你的Web App名稱> --resource-group <你的資源群組> --settings @你的json檔
假設有個檔案名為config.json
,其內容如下
{
"TEST": "123"
}
執行以下指令設定環境變數:
az webapp config appsettings set \
--name triathlontes --resource-group cv --settings @config.json
az webapp config appsettings list \
--name <你的Web App名稱> --resource-group <你的資源群組>
Flask
網頁建立好 Web App 之後,可以先部署簡單的Flask
,來看看效果。
Flask
網頁會需要兩個檔案,一個是要部署的python
檔案,另一個是requirements.txt
,讓系統在部屬的同時,可以安裝需要用到的python
套件。
application.py
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
"hello world"
return "Hello World!!!!!"
requirements.txt
Flask
git
將這兩個檔案上傳。https://<your web app name>.azurewebsites.net
,看會不會出現 "hello world"。概觀
看到。如果部署成功,我們就可以開始下一個步驟~打造自己的 chatbot。